package modelo;

import java.util.ArrayList;
import java.util.ListIterator;

public class Organizacion {

	// Atributos
	private String direccion;
	private String rif;
	private String telefono;
	private String nombre;
	private ArrayList<Evento> eventos;
	private ArrayList<Tienda> tiendas;

	
	// Constructor sin parámetros
	public Organizacion() {
		super();
		this.tiendas = new ArrayList<Tienda>();
		this.eventos = new ArrayList<Evento>();
		
	} 
	
	public Organizacion(ArrayList<Tienda> tienda, ArrayList<Evento> evento){
		this.eventos = new ArrayList<Evento>();
		this.tiendas = new ArrayList<Tienda>();
	}
	
	// Getters y Setters
	public String getNombre() {
		return nombre;
	}

	public void setNombre(String nombre) {
		this.nombre = nombre;
	}

	public String getTelefono() {
		return telefono;
	}

	public void setTelefono(String telefono) {
		this.telefono = telefono;
	}

	public String getRif() {
		return rif;
	}

	public void setRif(String rif) {
		this.rif = rif;
	}

	public String getDireccion() {
		return direccion;
	}

	public void setDireccion(String direccion) {
		this.direccion = direccion;
	}

	public ArrayList<Evento> getEventos() {
		return eventos;
	}

	public void setEventos(ArrayList<Evento> eventos) {
		this.eventos = eventos;
	}

	public ArrayList<Tienda> getTiendas() {
		return tiendas;
	}
	
	public ArrayList<String> getRifComboBox(){
		
		ArrayList<String> rif = new ArrayList();
		for (int i = 0; i < cantTiendas(); i++ ){
			rif.add(tiendas.get(i).getNombre());
		}
		return rif;
	}

	public Tienda getUnaTienda(int i){
		
		return this.tiendas.get(i);
	
	}
	
public Evento getUnaEvento(int i){
		
		return this.eventos.get(i);
	
	}
	
	
	public void setTiendas(ArrayList<Tienda> tiendas) {
		this.tiendas = tiendas;
	}

	public void agregarTienda(Tienda tienda) {
		this.tiendas.add(tienda);
	}
	
	public int cantTiendas() {
		return this.tiendas.size();
	}
	public void agregarEvento(Evento evento) {
		 
		this.eventos.add(evento);
		}
		
	public int cantEventos() {
		return this.eventos.size();
	}
	
	public int buscarEvento(String cod) {
		for(int i=0; i<cantEventos(); i++){
            if (eventos.get(i).getCodigo().equalsIgnoreCase(cod)){
            	return i;
            }
		}
    return -1;
		
	}
	
	
	public void ingresarProductoTienda(String rifTienda, Producto producto){
		
		Tienda tienda;
		for (ListIterator<Tienda> it =tiendas.listIterator(); it.hasNext(); ){
			tienda = it.next();
			
			if (tienda.getRif().equalsIgnoreCase(rifTienda)){
				tienda.ingresarProducto(producto);
			}			
		}
	}
	
	
	public int buscarTienda(String rif) {
		for(int i=0; i<cantTiendas(); i++){
            if (tiendas.get(i).getRif().equalsIgnoreCase(rif)){
            	return i;
            }
		}
    return -1;
		
	}
}
